#ifndef NVENCVIDEOENCODER_FACTORY_H_
#define NVENCVIDEOENCODER_FACTORY_H_

#include <vector>
#include "api/video_codecs/sdp_video_format.h"
#include "api/video_codecs/video_encoder.h"
#include "api/video_codecs/video_encoder_factory.h"


class NVENCVideoEncoderFactory : public webrtc::VideoEncoderFactory {
 public:
  std::unique_ptr<webrtc::VideoEncoder> CreateVideoEncoder(
      const webrtc::SdpVideoFormat& format) override;

  std::vector<webrtc::SdpVideoFormat> GetSupportedFormats() const override;

  webrtc::VideoEncoderFactory::CodecSupport QueryCodecSupport(
      const webrtc::SdpVideoFormat& format, absl::optional<std::string> scalability_mode) const override;
};

#endif  // NVENCVIDEOENCODER_FACTORY_H_


